The present invention relates to a technology for determining a computer to be allocated to a desired business application among plurality of the computers.
In recent years, use of the Internet in processing predetermined application has been widely performed. Specifically, business applications were conventionally used only in a system whose number of operation terminals was fixed. However, in light of the growing number of processes performed using the Internet, estimation of the number of operation terminals and the number of requests is becoming difficult.
For this reason, there is suggested a technology which improves operation stability and enhances responsiveness to requests by increasing, in accordance with the number of requests, amount of resources (i.e., number of computers) for executing business applications, thereby distributing the load. For example, in Japanese Patent Laid-Open No. 2005-141605 (US Publication No. 20050102674) (hereinafter, referred to as Patent Document 1), a technology is suggested in which a computer resource executing a certain service (business application) is reallocated to another service. In this technology, standby computer resources are kept in a “dead stand by” state where application is at least not installed and by sharing such dead standby state computer resources among plurality of services or users, an improvement in usage rate of idle computer resources and server integration are to be accomplished, thereby reducing the cost required for maintaining computer resources. Moreover, concerning respective services, load estimation is conducted using operation history of the past while idle computer resources secured and kept by these services are directed to other services according to result of the load estimation.
In large-scale computing centers, there is configured a system which executes each one of a plurality of business applications (for instance, Web service program) by at least one of a plurality of computers while directs request for the business application to the computer executing such business application. In such systems, a computer non-allocated with business application is pooled, the pooled non-allocated computer is then allocated to business applications having large number of processing steps, and hence the resource amount (that is, number of computers) for the business application having large processing steps is increased due to execution of such business application being performed by the allocated computer. According to such procedure, service level for the business application having large processing steps is prevented from degrading. Here, the service level refers to a level of service provided to service users by service providers. For example, the service level can be represented by a time required from transmission of the request in a user terminal of the service user until the result of the request is returned to the same user terminal.
According to technology described in the Patent Document 1 above mentioned, when a free resource is not found in a shared resource pool, surplus computer resources of the low load business application can be reallocated to the high load business application, in the case of above-described system.
However, the technology described in Patent Document 1 does not consider the following points.
(1) The computer resources used in the computing center do not necessarily share the same specification.
(2) The number of requests acceptable (that is, to stably process) for a computer resource having certain specification differs with the business application.
For this reason, when the technology described in above mentioned patent document 1 is applied to allocation of computer resources for each of the business applications in a system which executes each one of a plurality of business applications by at least one of a plurality of computers while directs request for the business application to the computer executing such business application, an effective allocation of computer resources becomes difficult, that is, free from scarce computer resources or occurrence of over-allocation of the computer resources prevented.